# Template file for 'glib'
pkgname=glib
reverts="2.74.0_2"
version=2.72.2
revision=10
build_style=meson
# static version is necessary for qemu-user-static;
# also disable LTO, otherwise there are multiple failures when linking qemu
configure_args="-Dfam=false -Dman=true -Dselinux=disabled
 $(vopt_bool gtk_doc gtk_doc) --default-library=both -Db_lto=false"
hostmakedepends="gettext pkgconf libxslt docbook-xsl $(vopt_if gtk_doc gtk-doc)"
makedepends="zlib-devel pcre-devel libffi-devel dbus-devel elfutils-devel libmount-devel"
checkdepends="desktop-file-utils shared-mime-info dbus python3-pytest"
short_desc="GNU library of C routines"
maintainer="MarcoAPC <marcoaureliopc@gmail.com>"
license="LGPL-2.1-or-later"
homepage="https://wiki.gnome.org/Projects/GLib"
#changelog="https://gitlab.gnome.org/GNOME/glib/raw/main/NEWS"
changelog="https://gitlab.gnome.org/GNOME/glib/raw/glib-2-72/NEWS"
distfiles="${GNOME_SITE}/glib/${version%.*}/glib-${version}.tar.xz"
checksum=78d599a133dba7fe2036dfa8db8fb6131ab9642783fc9578b07a20995252d2de

build_options="gtk_doc"
desc_option_gtk_doc="Build GTK API docs"

if [ -z "$CROSS_BUILD" ]; then
	build_options_default+=" gtk_doc"
fi

do_check() {
	dbus-run-session ninja -C build test
}

libglib-devel_package() {
	depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
	short_desc+=" - development files"
	lib32files="/usr/lib/glib-2.0/include/glibconfig.h"
	pkg_install() {
		vmove usr/include
		vmove usr/lib/glib-2.0
		vmove usr/lib/pkgconfig
		vmove "usr/lib/*.so"
		vmove "usr/lib/*.a"
	}
}

glib-devel_package() {
	depends="python3 libglib-devel>=${version}_${revision}"
	short_desc+=" - development files"
	python_version=3
	pycompile_dirs="usr/share/glib-2.0/codegen usr/share/glib-2.0/gdb"
	pkg_install() {
		vmove usr/bin/glib-compile-resources
		vmove usr/bin/glib-genmarshal
		vmove usr/bin/glib-mkenums
		vmove usr/bin/gtester-report
		vmove usr/bin/gdbus-codegen
		vmove usr/bin/gtester
		vmove usr/bin/glib-gettextize
		vmove usr/share/man/man1/glib-compile-resources.1
		vmove usr/share/man/man1/glib-gettextize.1
		vmove usr/share/man/man1/gtester.1
		vmove usr/share/man/man1/glib-mkenums.1
		vmove usr/share/man/man1/gdbus-codegen.1
		vmove usr/share/man/man1/glib-genmarshal.1
		vmove usr/share/man/man1/gtester-report.1
		for f in aclocal glib-2.0 gdb; do
			vmove usr/share/${f}
		done
		if [ -d $DESTDIR/usr/share/gtk-doc ]; then
			vmove usr/share/gtk-doc
		fi
	}
}
